package us.clubadvocate.client;

import com.google.gwt.core.client.RunAsyncCallback;

public abstract class AsyncPortalProvider implements RunAsyncCallback
{
  protected static ClubAdvocatorController controller = null;
  
  public static final void setController(ClubAdvocatorController c)
  {
    if(controller == null)
      controller = c;
  }
  
  // ---------------------------------------------------------------------------
  
  public abstract String getName();
  
  // ---------------------------------------------------------------------------
  
  public abstract void startAsync();
  
  // ---------------------------------------------------------------------------
  
  @Override
  public final void onFailure(Throwable reason)
  {
    reason.printStackTrace();
  }
  
  // ---------------------------------------------------------------------------
}
